//笔记 : ipcs -m 显示系统中的共享内存段
//ipcrm -m chmid 删除共享内存

















#pragma once
#include <iostream>
#include <string>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

const std::string gpipeFile = "./fifo";
const mode_t gmode = 0600;
const int gdefaultfd = -1;
const int gsize = 1024;
const int gForRead = O_RDONLY;
const int gForWrite = O_WRONLY;

//打开管道文件
int OpenPipe(int flag)
{
    // 如果读端打开文件时, 写端还没打开, 读端对应的open就会阻塞
    int fd = ::open(gpipeFile.c_str(), flag);
    if (fd < 0)
    {
        std::cerr << "open error" << std::endl;
    }
    return fd;
}

//关闭管道文件
void ClosePipeHelper(int fd)
{
    if(fd >= 0)
        ::close(fd);
}